The present invention relates generally to the field of data storage, and more particularly to replicating data to another storage location utilizing an asynchronous copy service.
Data replication is utilized to prevent damage and/or data loss from failures or disasters that occur at one location by storing a copy of the data to another physical location, often a distance away from the primary storage location of the data. Data replication differs from data backup. Data backup saves a copy of data that is unchanged for a long period of time. Data replication occurs frequently; therefore, the current version of the data is relatively recent and the historical state of the data may change significantly. For example, financial transaction data may be frequently replicated to minimize possible impacts to customers. Two data replication strategies are synchronous data replication and asynchronous data replication. Synchronous data replication utilizes more system and network resources to guarantee zero data loss between the primary (e.g., local) location and secondary storage locations. However, a write acknowledgement (ack) message is required from both storage locations before other operations that affect the stored data can occur. Thus, based on the distance between storage locations, the latency of a communication network can create delays and degrade the performance of an application that utilizes and/or creates the data.
Asynchronous replication allows an application to proceed as soon as a write ack message is received from local storage (e.g., the primary storage location). Data replication to the secondary location can be delayed based on resource availability of a computer system and/or occurs via a slower, cheaper network connection. However, based on delays associated with writing data to a secondary storage location an out-of-sync condition occurs, where for a period of time the data stored on the secondary storage location differs from data stored within the primary storage location.